#include<stdio.h>
#include<string.h>
#include "parcours.h"

void menu_parcours()
{
int c;
parcours *p;
parcours p1;

printf("\n 1:verification parcours predefini");
printf("\n 2:modification parcours");
printf("\n 3:verification parcours");
printf("\n touche quelconque:quitter\n");
scanf("%d",&c);

switch(c){
case 1:
parcourspredefini(p1);
menu_parcours();
break;
case 2:
parcoursmodifie(&p1);
menu_parcours();
break;
case 3:
verifmodifie(&p1);
menu_parcours();
break;
default:
break;
}
}


void parcourspredefini(parcours p)
{
int b,n;


printf("saisir votre id\n");
scanf("%d",&(p.id));
printf("%s",p.parcours);
strcpy(p.parcours,"E01C01S01L01C02V01I01D01B01M01");


char chemin[]="evenements.log";
char a[10];

char c[10];
FILE *f;
f=fopen(chemin,"r");
if (f==NULL)
printf("impossible\n");
else{
char cc[50]="";
while(fscanf(f,"%s %d %s",a,&b,c)!=EOF ){
if(p.id==b){

strcat(cc,c);
}

}
printf("\n%s",cc);
if(strcmp(p.parcours,cc)){
printf("\ndifferents\n");
}
else printf("\negales\n");

}
fclose(f);
}





void parcoursmodifie(parcours *p)
{


int n,a;



printf("\nsaisir votre id \n ");
scanf("%d",&(p->id));
char chemin1[]="parcours.txt";
char chemin2[]="temp.txt";
char b[max];
FILE *f1;
FILE *f2;

f1=fopen(chemin1,"r");
f2=fopen(chemin2,"a");
if(f1==NULL||f2==NULL) printf("\nimpossible");
else{
while(fscanf(f1,"%d %s",&a,b)!=EOF){
        if(p->id!=a)
        fprintf(f2,"%d %s",a,b);
}
do{
printf("\nsaisir le nbre des capteurs à utiliser\n");
scanf("%d",&n);
}while(n<0);
do{
printf("\ndonner les capteurs qui seront activés successivement et sans espaces\n");
scanf("%s",p->parcours);
}while(p->parcours[(3*n)]!='\0');
fprintf(f2,"\n%d %s",p->id,p->parcours);
printf("\n%s ok!",p->parcours);

fclose(f1);
fclose(f2);
remove(chemin1);
rename(chemin2,chemin1);
}
}




void verifmodifie(parcours *p)
{
int k,j;
char chemin1[]="parcours.txt";
char chemin2[]="evenements.log";
char b[max];
char a[10];
char c[10];
char m[10];
char q[10];
FILE *f1;
FILE *f2;
f1=fopen(chemin1,"r");
f2=fopen(chemin2,"r");
if(f1==NULL) printf("\nimpossible");
else {
printf("\ndonner id\n");
scanf("%d",&p->id);
while (fscanf(f1,"%d %s",&k,b)!=EOF){
if(p->id==k)
strcpy(p->parcours,b);
}

FILE *f2;
f2=fopen(chemin2,"r");
if (f2==NULL)
printf("impossible\n");
else{
char cc[50]="";
while(fscanf(f2,"%s %d %s",m,&j,q)!=EOF ){
if(p->id==j){

strcat(cc,q);
}

}
printf("\n%s",cc);
if(strcmp(p->parcours,cc)){
printf("\ndifferents\n");
}
else printf("\negales\n");


fclose(f1);
fclose(f2);
}
}
}




